آموزشی و نرم افزار آموزشی ونرم افزار |
||||||||||||||||||||||||||||||||||||||
چهار شنبه 28 ارديبهشت 1390برچسب:, :: 11:19 :: نويسنده : سیدمحسن بیرجندی
لینوکس رده حامل (CGL) در کانون حرکت به سوی معماری های باز قرار دارد. حدود سه سال پیش، گروهی از نمایندگان فروشنده های پلاتفرم، تامین کنندگان توزیع های لینوکس و فراهم کنندگان تجهیزات شبکه شروع به تعریف این مطلب نمودند که لینوکس رده حامل چگونه می تواند قابلیت اعتماد، سرویس پذیری و توسعه پذیری بالاتر را برای محیط های مختلف به ارمغان آورد، و این گونه بود که گروه کاری آزمایشگاه توسعه کدباز (OSDL) CGL شکل گرفت. از زمان شکل گیری، این گروه دو نسخه از یک مشخصه را برای تعریف این قابلیت ها تولید نموده است. در پاسخ، ارایه دهندگان توزیع لینوکس اکنون بیان می دارند که آنها توانایی پاسخگویی به نیازهای ارتباطی در حال ظهور را با اعلام عمومی نحوه مطابقت محصولات آنها با نیازمندی های تعریف شده در Carrier Grade Linux Requirements Definition نسخه 2.0 دارند. در حال حاضر، گروه کاری CGL به گونه ای رشد یافته است که دارای بیش از 36 نماینده از فروشندگان پلاتفرم، تامین کنندگان توزیع لینوکس، فراهم کنندگان تجهیزات شبکه، حاملان (carrier ها) و اعضای انجمن توسعه در سراسر جهان است (تصویر 1 را مشاهده نمایید). این گروه گسترش یافته در حال حاضر مشغول عرضه نسخه سوم از نیازمندی های CGL است. یک نسخه تکنولوژی از این سند در اوایل سال 2005 عرضه گردیده و یک نسخه قابل ثبت نیز در نیمه دوم 2005 عرضه خواهد شد. دسترس پذیری مشتریان مخابرات و ارتباطات انتظار دارند سرویس های صوت و داده ی آنها همیشه در دسترس باشد.دسترس پذیری سیستم به دسترس پذیری تک تک اجزای سیستم بستگی دارد. برای تضمین سرویس 7/24، باید این امکان وجود داشته باشد که نگهداری سیستم و گسترش سیستم در حال اجرای شبکه ها و سرورهای ارتباطی (مخابراتی) بدون مختل شدن سرویس هایی که از سوی آنها ارایه می گردد صورت گیرد.سیستم ها باید قادر به مقاومت در برابر خرابی اجزا باشند، امری که نسخه برداری و فراهم آوردن پشتیبان برای منابع تغذیه، فن ها، کارت های شبکه، منابع و مسیرهای ذخیره سازی را به موضوعی حیاتی تبدیل می نماید. خرابی های نرم افزاری نیز می تواند به میزان قابل توجهی دسترس پذیری یک گره ی محاسبه را تحت تاثیر قرار دهد، بنابراین برای دسترس پذیری تک -گره نرم افزار کاربردی، middleware و سیستم عامل قدرتمند مورد نیاز است. تعریف نیازمندی های دسترس پذیری CGL (CGL Availability Requirements Definition) نسخه ی 3.0 مجموعه ای از نیازمندی هایی است که قدرتمندی یک گره ی محاسبه گر واحد را مد نظر قرار می دهند. دسترس پذیری با کلاستربندی گره های محاسبه گر مجزا بهبود یافته است و از همین رو یک گره یک نقطه ی واحد خرابی می باشد. عملیات آنلاین عملیات آنلاین، یک سیستم را قادر می سازند در مواقعی که سخت افزار یا نرم افزار در حال جایگزینی یا ارتقا هستند یک سرویس را فراهم نماید. برای نمونه، هنگامی که یک فایل سیستم نیازمند اصلاح است، ممکن است اصلاح صورت گرفته به راه اندازی مجدد سیستم نیاز داشته باشد. در هر صورت، CGL امکان unmount شدن یک فایل سیستم را به شکلی قدرتمند و موثر ایجاب می نماید تا اصلاح و mount مجدد بدون راه اندازی مجدد (reboot) صورت گیرد. توانایی جایگزین نمودن یا ارتقای دیسک ها، پردازنده ها، حافظه، یا حتی کل blade های پردازنده/حافظه بدون از کار انداختن گره یا شبکه به میزان قابل توجهی به دسترس پذیری دایمی سرویس کمک می کند. افزونگی یک سیستم با دسترس پذیری بالا باید دارای اجزای اضافی باشد و توانایی بهره گیری از سخت افزار اضافی را داشته باشد تا در هنگام خرابی یکی از اجزا بتواند همچنان به کار خود ادامه دهد. در حالت ایده آل، طرح ها می توانند تمامی نقاط منفرد از کار افتاده را از سیستم حذف نمایند. استفاده از مسیرهای ارتباطی اضافی، از قبیل پورت های اضافی شبکه و آداپتورهای اضافی میزبان، به همراه قابلیت های نرم افزارهای failover شبکه (نرم افزارهایی که کار سوییچ خودکار به منابع اضافی در هنگام بروز اشکال در منابع اصلی را انجام می دهند) همچون Ethernet bonding، دسترس پذیری شبکه را بهبود می بخشد. مسیرهای اضافی ذخیره سازی از قبیل پورت های اضافی کانال فیبر و آداپتورهای اضافی میزبان به کار برده شده با ورودی/خروجی چندمسیری، دسترس پذیری ذخیره سازی را بهبود می بخشد. استفاده از اجزای اضافی حافظه ممکن است امکان پذیر نباشد، اما کشف و تصحیح خطا می تواند برای ماسک کردن خطاهای خانه های حافظه مورد استفاده قرار گیرد؛ CGL پشتیبانی نرم افزاری کد تصحیح خطا (ECC) را ایجاب می نماید. خطاهای تک-بیت هنگامی که در سخت افزار یافت می گردند و توسط کرنل ثبت می شوند، گزارش می گردند. کرنل هر گاه که خطاهای غیر قابل تصحیح چند-بیت را شناسایی می نماید اقدام به فراخوانی یک روتین خاص می کند. مانیتورینگ کشف سریع خرابی های سخت افزاری یا نرم افزاری نیازمند مانیتورینگ صحت (health monitoring) است.مانیتورینگ صحت همچنین برای کنترل سخت افزار یا نرم افزاری که شروع به خراب شدن کرده است مورد نیاز می باشد، مواردی همچون کنترل ECC حافظه، تجزیه و تحلیل پیش گویانه برای دیسک ها و پروسس هایی که به شیوه ای قابل پیش بینی پاسخگو نیستند. از مانیتورینگ غیر نفوذی پروسس ها و کنش های غیرمعمول حافظه می توان به عنوان مثال هایی از نیازمندی های مانیتورینگ CGL نام برد. مانیتورینگ غیرنفوذی پروسس ها رفتار غیر عادی یک پروسس را شناسایی می نماید، رفتارهایی از قبیل مرگ پروسس، و یک اقدام را پایه ریزی می نماید، اقداماتی از قبیل ایجاد یک پروسس جدید. در مثال کنش های غیرمعمول حافظه، کارکرد حافظه ی سیستم مانیتور می گردد و هنگامی که استفاده از حافظه از حدود مشخص شده تجاوز کند فعالیت پروسس کنترل می شود. نرم افزار قدرتمند نرم افزار قدرتمند نه تنها به سطوح بالای کیفیت برای نرم افزار سیستم عامل، middleware و برنامه های کاربردی اشاره دارد، بلکه با قابلیت های موجود برای نگهداری و ارتقای نرم افزار بدون متوقف ساختن سیستم نیز مرتبط است. در بسیاری از موارد، دسترس پذیری دایمی سرویس می تواند حفظ شود. Live Patching امکان اصلاح پروسس را بدون متوقف ساختن آن فراهم می آورد. Excessive CPU Cycle Detection رفتار غیر عادی پروسس را با تنظیم آستانه های استفاده از CPU در نقاط مختلف پروسس شناسایی می کند، و در نتیجه مشکلاتی از قبیل تولید موارد بی مصرف (thrashing) و حلقه های نامتناهی را مهار می کند، و اقداماتی از قبیل راه اندازی مجدد پروسس را پایه ریزی می نماید. برای به حداکثر رساندن uptime سیستم، به حداقل رساندن زمانی که سیستم در یک وضعیت آفلاین قرار دارد (مانند shutdown یا boot) از اهمیت بالایی برخوردار است. شرط آغاز به کار سریع سیستم (Fast System Startup)، زمان صرف شده برای راه اندازی مجدد یک سیستم با مد نظر قرار دادن توانایی چشم پوشی از برنامه ی بایوس را در بر می گیرد. شرط Boot Image Fallback ساز و کاری را تعریف می نماید که یک سیستم را قادر می سازد در مواقع بحرانی نارسایی بوت، به وضعیت مناسب قبلی بازگردد. کلاسترها گروه کاری CGL یک مطالعه بر روی مدل استعمال کلاسترها انجام داد که نشان داد هیچ مدل کلاستربندی واحدی پاسخگوی نیازهای تمامی برنامه های کاربردی حامل نیست. بنابراین CGL رویکرد کلی تری را برای تعریف نیازمندی های کلاستربندی در پیش گرفت. آن اجزای عملیاتی یک کلاستر رده ی حامل با دسترس پذیری بالا (HAC) را تعریف می نماید. شروط مورد نیاز برای سایر مدل های کلاستر، از قبیل یک کلاستر بسط پذیری، یک کلاستر تلفیق سرور و یک کلاستر محاسبه گری با کارآیی بالا (HPC)، به عنوان موارد ثانویه برای نیازمندی های یک مدل کلاستر HAC در نظر گرفته شده اند. سرویس پذیری تعریف نیازمندی های سرویس پذیری CGL (CGL Serviceability Requirements Definition) نسخه ی 3.0 مجموعه ای از مشخصه های مفید و لازم را برای سرویس و نگهداری یک سیستم تعیین می نماید.سیستم های ارتباطی از قبیل سرورهای مدیریت، گیت وی ها و سرورهای سیگنالینگ که از راه دور مدیریت و نظارت می شوند دارای مدیریت بسته نرم افزاری قدرتمند برای نصب ها و ارتقاها و همچنین ساز و کارهایی برای دریافت و تحلیل اطلاعات مربوط به خرابی ها می باشند. یک نقطه ی واحد کنترل برای برنامه های کاربردی، نرم افزار، سخت افزار و داده ها جهت عملکردهایی از قبیل انتقال، امنیت، پشتیبان گیری و بازیابی داده ها مورد نیاز است. سیستم های CGL استانداردهای مدیریت از راه دور از قبیل SNMP (Simple Network Management Protocol)، CIM (Common Information Model) و WBEM (Web-Based Enterprise Management) را پشتیبانی خواهند نمود. استانداردهای مدیریت محلی شامل IPMI و HPI (Hardware Platform Interface) متعلق به انجمن دسترس پذیری سرویس می باشند. برای اشکال زدایی و جداسازی خرابی های یک سیستم دیباگرها، دامپرهای برنامه کاربردی و کرنل، تریگرهای watchdog و ابزارهای تحلیل خطا مورد نیاز هستند. مانیتورینگ تشخیصی کنترل های دما، فن ها، منابع تغذیه، رسانه های ذخیره سازی، شبکه، CPU ها و حافظه برای شناسایی سریع خرابی و تشخیص عیب لازم است. کارآیی تعریف نیازمندی های کارآیی CGL (CGL Performance Requirements Definition) نسخه ی 3.0 مجموعه ای از نیازمندی های خاص سیستم عامل لینوکس است که نیازهای کارآیی و توسعه پذیری سیستم های ارتباطی نوعی را تشریح می نماید. نکات مهم شامل توانایی یک سیستم برای مواجهه با موعد پایان سرویس، توسعه یافتن برای بهره گیری از چندپردازشی متقارن (SMP)، تکنولوژی چند رشته ای (Hyper Threading) و سیستم های حافظه ی بزرگ، و فراهم ساختن ارتباط کارآمد با زمان تاخیر کم می باشند. بدون تاخیرهای برنامه ریزی شده ی قابل پیش بینی، این احتمال وجود دارد که لحظه ی انقضای سرویس ها مد نظر قرار نگیرد، که این امر به مکالمه های حذف شده، ویژگی های غیر منطقی پاسخگویی مکالمه، یا حتی حذف شدن کل سرویس از عملیات فعال منجر گردد. زمانبندی realtime، تاخیرهای زمانبندی قابل پیش بینی را در بارگذاری های تعریف شده فراهم می آورد. پارامترهای زمانبندی و تاخیر بایستی در زمان اجرا قابل تنظیم باشند؛ برش های زمانبندی باید به 1 میلی ثانیه یا کمتر قابل تنظیم باشند. محافظت در مقابل وارونگی اولویت نیز برای حفظ زمانبندی قابل پیش بینی لازم است. استانداردها یکی از اهداف CGL دستیابی به قابلیت اطمینان، دسترس پذیری و سرویس پذیری (RAS) بالا به اضافه ی قابل انتقال بودن برنامه ی کاربردی به منظور اعمال استانداردهای کامل صنعتی که مرتبط با محیط رده ی حامل هستند و ضمیمه نمودن آنها به عنوان بخشی از نیازمندی های CGL است. استانداردهای باز اهمیت زیادی دارند چرا که آنها به شکل مجانی و آزاد در اختیار همه ی اشخاص یا سازمان ها جهت استفاده قرار دارند و به این دلیل که استانداردهای باز می توانند توسط بازخورد و معتبرسازی وسیع جامعه رشد یابند. گروه کاری CGL به شکلی فعال و جدی با گروه های استاندارد به رسمیت شناخته شده، از قبیل Linux Standard Base (LSB)، Free Standards Group و Service Availability Forum (SAForum) در تعامل و مشارکت است. این سازمان ها استانداردها و مشخصه هایی را تبیین می نمایند که شکاف های RAS و انتقال پذیری برنامه های کاربردی میان لینوکس آن گونه که در حال حاضر وجود دارد و وضعیتی که آن برای پشتیبانی برنامه های کاربردی ارتباطات با دسترس پذیری بالا نیازمند دستیابی به آن است مد نظر قرار می دهند. نخستین حکم CGL Standards Definition نسخه 3.0 بیانگر اشتیاق گروه کاری CGL برای کار در کنار گروه های استاندارد های به رسمیت شناخته شده است: سخت افزار برای رقابتی و سودآور ماندن در صنعت ارتباطات (مخابرات)، سخت افزارهای COTS ماژولار مبتنی بر استانداردها به همراه نرم افزارهای باز شامل سیستم های عامل، middleware و برنامه های کاربردی مورد استفاده قرار می گیرند. یکی از اهداف گروه کاری CGL ترویج مهاجرت صنعت ارتباطات از سخت افزارهای اختصاصی به سخت افزارهای COTS می باشد با ضمانت این امر که محیط لینوکس به میزان کافی این پلاتفرم های COTS را پشتیبانی می نماید. تعریف نیازمندی های سخت افزاری CGL (CGL Hardware Requirements Definition) نسخه ی 3.0 مجموعه ای از پلاتفرم هایی که به شکلی وسیع مورد استفاده قرار می گیرند را به رسمیت می شناسد و پشتیبانی مورد نیاز برای آنها در سیستم عامل را تعریف می نماید. حوزه ی این نیازمندی ها کرنل لینوکس، رابط های کرنل (API ها و کتابخانه ها)، ابزارها و نرم افزارهای سیستم را در بر می گیرد. CGL Hardware Requirements Definition نسخه ی 3.0 مجموعه ای از نیازمندی های عام که در میان انواع پلاتفرم ها مشترک است را مطرح می نماید. آن پشتیبانی سرورهای blade، رابط های مدیریت سخت افزار و رویدادهای blade hot-swap را در بر می گیرد. برای مد نظر قرار دادن نیاز به مدیریت سیستم های رده ی حامل با دسترس پذیری بالا از طریق ساز و کارهای نا هم گروه سخت افزاری، قابلیت های مدیریتی از قبیل رابط مدیریت پلاتفرم هوشمند (IPMI) نیز تشریح شده اند. امنیت تعریف نیازمندی های امنیتی CGL (CGL Security Requirements Definition) نسخه ی 3.0 به همراه سایر مشخصه های CGL نسخه ی 3 در فوریه 2005 اریه نشد. آن بعدا هنگامی که تعریف پروفایل امنیت CGL تثبیت گردید و یک رویکرد برای امنیت در یک محیط مخابراتی تعریف گردید، عرضه شد. محیط ارتباطات و مخابرات بسیار متفاوت از یک محیط محاسبه گری عام-منظوره است. مشهودترین تفاوت ها برای مد نظر قرار گرفتن در توسعه ی یک مدل تهدید CGL عبارتند از: خلاصه مشخصه های CGL 3.0 یک مجموعه ی بسیار بزرگ از مشخصه ی CGL 2.0.2 با سازگاری بالاگرا (upward) می باشند. در سال های 2003 و 2004، شرکت های عضو اقدام به تولید محصولات ارتباطی مبتنی بر مشخصه های 1.1 CGL نمودند. در نیمه ی دوم سال 2004، توزیع کنندگان لینوکس شروع به معرفی عرضه های لینوکس مبتنی بر مشخصه ی CGL 2.0.2 نمودند. پیش بینی می شود این محصولات مبتنی بر CGL 2.0.2 در سال جاری پدیدار گردند. پیش بینی می گردد همچنان که توزیع های لینوکس به قابلیت های CGL 3.0 مجهز می شوند یک گذار آرام برای حاملان و فراهم کنندگان تجهیزات در سال های 2005 و 2006 رخ دهد. فرایند توسعه ی بسیاری از قابلیت های CGL که در توزیع های عمده دیده نمی شوند در جریان است. در حالی که نیازمندی های CGL برای پلاتفرم های لینوکس در صنعت ارتباطات تعیین گردیده است، یک سیستم توسعه پذیر با دسترس پذیری و کارآیی بالا به عنوان سیستم مفید و مورد پسند برای کل جامعه ی لینوکس محسوب می گردد. نظرات شما عزیزان:
موضوعات ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() آخرین مطالب ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() پيوندها ![]() ![]() ![]() ![]() ![]()
![]() ![]() نويسندگان
|
||||||||||||||||||||||||||||||||||||||
![]() |